129 YP = YP/DI:ZH = ZH/DI:XH = XH/DI:ZP = ZP/DI:X1 = S *(ZP *XH):Z1 = S *ZP *ZH:X = X +X1:Z = Z +Z1:Y1 = S *YP:Y = Y +Y1: IF P >190 OR P <64 THEN Y = Y -2 *Y1
133 IF X <W2 THEN X = W1
134 IF X >W1 THEN X = W2
135 IF Y <W2 THEN Y = W1
136 IF Y >W1 THEN Y = W2
137 IF Z <W2 THEN Z = W1
138 IF Z >W1 THEN Z = W2
140 BV% = X: GOSUB 6000: POKE XI,LO%: POKE XI +1,HI%:BV% = Y: GOSUB 6000: POKE YI,LO%: POKE YI +1,HI%:BV% = Z: GOSUB 6000: POKE ZI,LO%: POKE ZI +1,HI%
147 POKE 29461,84 +OO:OP = ABS(OO -1): POKE 29463,OP: POKE 29465,OP: IF PEEK(38210) = 1 THEN Y = Y -(6 -(S/10)): IF Y <20 THEN Y = 20: POKE P1,0: POKE B1,0
150 CALL CA: IF OO = 1 THEN POKE 974,32: CALL 37936
156 POKE 973,1: VTAB 8: HTAB 18: PRINT "-"; CHR$(91);" "; CHR$(93);"-": POKE 973,0: IF ABS(X) <900 AND ABS(Y) <900 AND ABS(Z) <900 AND PEEK(38210) = 0 THEN PRINT "<CTRL-D>RUNRE"
158 IF PEEK(38210) = 1 AND Y >4000 THEN PRINT "<CTRL-D>RUNORBIT"
159 HCOLOR= 0: DRAW 25 AT TT,133: DRAW 26 AT 136,VV: DRAW 25 AT EE,133: DRAW 25 AT SS,133:TX = 140 +((HL -B)/5.7): IF B <127 THEN TX = 140 -(B/5.7)
170 VY = INT(167 -((HL -P)/4)): IF P <127 THEN VY = INT(167 +(P/4))
173 SX = 13 +(S/2):EX = 199 +E
175 HCOLOR= 3: IF PEEK(P1) >59 AND PEEK(P1) <127 THEN POKE P1,59
177 IF PEEK(P1) <195 AND PEEK(P1) >127 THEN POKE P1,195
180 DRAW 13 AT TX,133: DRAW 14 AT 136,VY: DRAW 13 AT SX,133: DRAW 13 AT EX,133: IF OO = 1 THEN TT = TX:VV = VY:EE = EX:SS = SX
182 IF PEEK(38149) = 7 THEN POKE 38149,0: GOTO 200
185 IF PEEK( -16287) >127 THEN GOSUB 1500
189 IF PEEK(38282 + PEEK(38209)) <2 THEN 200
190 IF PEEK(38208) = 0 AND PEEK(38210) = 1 THEN GOSUB 3000: IF RND(1) <.5 AND PEEK(38207) >0 THEN GOSUB 5000
192 IF PEEK(38208) = 0 AND X > -3500 AND X <4500 AND Y > -3000 AND Y <3000 AND Z > -6000 AND Z <2000 THEN GOSUB 3000: IF RND(1) <.6 AND PEEK(38207) >0 THEN GOSUB 5000
200 K = PEEK( -16384): IF K <128 THEN NEXT : GOTO 15
201 IF K -176 >0 THEN K = K -176: POKE -16368,0: ON K GOSUB 311,312,313,314
1010 CALL SG: FOR M = 124 TO 62 STEP -4: XDRAW M3 AT M1 +M2,M: XDRAW M3 AT M1 -M2,M: IF PEEK(38210) = 1 AND Y0 <VV THEN HIT = 1: GOTO 1060
1050 IF X0 <X9 +150 AND X0 >X9 -150 AND Y0 <Y9 +60 AND Y0 >Y9 -20 AND Z0 <Z9 +100 AND Z0 >Z9 -100 THEN HIT = 1
1060 XDRAW M3 AT M1 +M2,M: XDRAW M3 AT M1 -M2,M:M3 = M3 +.32:M2 = M2 -2:X0 = X0 +X2:Z0 = Z0 +Z2:Y0 = Y0 +Y2: IF P >190 OR P <64 THEN Y0 = Y0 -2 *Y2: NEXT
1085 IF HIT = 1 THEN GOSUB 1200:J1 = 10:J2 = 120: GOSUB 1535: GOTO 1090
1100 GOSUB 4100: POKE -16298,0: POKE -16297,0: HCOLOR= 3: FOR X0 = 1 TO 2: FOR LY = 0 TO 1: ROT= LY *25: XDRAW 2 AT M1 -M2,M: CALL SG: XDRAW 2 AT M1 +M2,M: CALL SG: NEXT : HCOLOR= 0: NEXT : ROT= 1: RETURN
1200 FOR X0 = 1 TO 2: FOR LY = 1 TO 2: SCALE= LY: XDRAW 2 AT M1 -M2,M: NEXT : SCALE= 1: POKE -16298,0: XDRAW 15 AT M1 -M2,M: XDRAW 16 AT M1 -M2,M: XDRAW 17 AT M1 -M2,M: XDRAW 18 AT M1 -M2,M: POKE -16297,0: GOSUB 4100
1205 CALL SG
1220 FOR LY = 1 TO 2: SCALE= LY: XDRAW 2 AT M1 +M2,M: NEXT
1222 SCALE= 1: POKE -16298,0: XDRAW 15 AT M1 +M2,M: XDRAW 16 AT M1 +M2,M: XDRAW 17 AT M1 +M2,M: XDRAW 18 AT M1 +M2,M: POKE -16297,0: NEXT : RETURN
1500 IF PEEK(38208) = 1 THEN POKE 38208,0: POKE 38150,100
1501 POKE -16300,0: IF PEEK(38202) = 1 THEN 1000
1502 IF PEEK(38186) = 0 THEN RETURN
1505 J1 = 10:J2 = 1:X1 = 90:X2 = 190:Y1 = 123:Y2 = 60:X3 = 136:X4 = 144: FOR LX = 1 TO 3: HCOLOR= 5: POKE -16298,0: HPLOT X1,Y1 TO X3,Y2 TO X1 +4,Y1: HPLOT X2,Y1 TO X4,Y2 TO X2 -4,Y1: POKE -16297,0: CALL LA
1530 HCOLOR= 0: HPLOT X1,Y1 TO X3,Y2 TO X1 +4,Y1: HPLOT X2,Y1 TO X4,Y2 TO X2 -4,Y1: FOR J = 1 TO 40: NEXT : NEXT
1535 VP = PEEK(38160) +(J1/(TE +1)): IF VP <HL THEN POKE 38160,VP
1540 IF PEEK(38210) = 0 THEN DP = PEEK(38152) +(J2/(TE +1)): IF DP <HL THEN POKE 38152,DP
1550 IF VP = > PEEK(38150) THEN POKE 974,32: POKE -16300,0: SPEED= 127: VTAB 13: HTAB 8: PRINT "THE PLANET HAS SURRENDERED": SPEED= 255: POKE 38219 + PEEK(38209),1: POKE 38208,1
1560 IF DP > PEEK(38204) AND PEEK(38205) < >0 THEN PRINT "<CTRL-D>RUNEX"
1570 RETURN
3000 IF PEEK(38205) = 0 AND PEEK(38210) = 0 THEN RETURN
3001 POKE -16300,0: IF RND(1) >.4 THEN 3030
3010 IF RND(1) >.4 THEN 3030
3019 GOSUB 4110:HC = RND(1) *5: FOR LY = 1 TO HC: POKE -16298,0: FOR J = 1 TO 10: NEXT : POKE -16297,0: CALL SG:X1 = ( RND(1) *40) +10: FOR J = 1 TO X1: NEXT : NEXT :DMG = 1